Intuitive device identification

ABSTRACT

A method and system for making it easy for users to identify their mobile device and the applications available for their device is provided, referred to as a device identification system. The device identification system simplifies the process of determining the device a user is using and the applications available for that device. Users are generally much more familiar with their device&#39;s features than they are with information such as the model number. Thus, the device identification system makes it easy for users to determine their device type by asking them questions to which they are likely to know the answer. Other features and alternatives are described.

BACKGROUND

A mobile game is a video or computer game played on a mobile phone,smart phone, personal digital assistant (PDA), handheld computer, orother portable device. Users usually download mobile games via themobile operator's radio network, but in some cases, games are loadedinto the mobile devices by the device manufacturer or phone carrier whenpurchased, or via infrared connection, Bluetooth, Universal Serial Bus(USB), or memory card. Mobile operators often tightly control thecontent (e.g., games, applications, and ring tones) available on theirnetwork. Mobile operators may have concerns about the security andsupport issues of executable code running on user's devices, and maywant to control the revenue generated by restricting the sources ofcontent.

Game makers develop mobile games using platforms and technologies suchas Windows Mobile, Palm OS, Symbian OS, Macromedia's Flash Lite,DoCoMo's DoJa, Sun's Java 2 Micro Edition (J2ME), Qualcomm's BREW(Binary Runtime for Wireless), WIPI, and Infusio's Execution Environment(ExEn). Java was initially the most common platform for mobile games;however, its performance limitations have led to the adoption of variousnative binary formats for more sophisticated games. Game makers mustoften make many different builds of a game to target each of theavailable platforms. Often the game maker does not have time to targetevery platform, so the game maker may limit the game to a few of themost popular platforms. In addition, some platforms have hardwarelimitations that do not accommodate a particular game. Even when a gamebuild is available for a particular platform, a carrier may choose notto support that game, so the game may be unavailable to a particularuser of that carrier. As a result, it can be hard to determine whatgames are available for a specific device. Even if the user knows theexact name of a game they want, users can spend hours trying to findwhether their mobile operator is selling the game in their country.

Another problem is that users often do not know basic model informationabout their mobile device, such as the manufacturer and model number.Many sites that provide mobile games require that a user select themanufacturer and model number of their device to determine whichapplications are available. Some devices do not display the modelinformation on the device, and require that the user remove a batterycover or perform other disassembly to discover the model of the device.Without knowing the model information, a site may present the user withhundreds of pictures of similar looking phones and ask the user toselect their phone. Users get discouraged by the time wasted identifyingtheir phone, particular if the process results in few or no games beingavailable once the site has identified the user's device.

There is a need for a system that overcomes the above problems, as wellas one that provides additional benefits.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram that illustrates a suitable computing systemfor a mobile device or device, used to search for content.

FIG. 2 is a block diagram that illustrates a typical computingenvironment for a website employing a device identification system.

FIG. 3 is a block diagram that illustrates the components of the deviceidentification system.

FIGS. 4-12 illustrate display pages produced by a user interfacecomponent of the device identification system.

FIG. 13 is a flow diagram that illustrates the processing of thecomponents of the system to determine the type of a user's device.

FIG. 14 is a flow diagram that illustrates the processing of a selectquery component of the device identification system.

DETAILED DESCRIPTION

The headings provided herein are for convenience only and do notnecessarily affect the scope or meaning of the claimed invention.

Overview

A method and system for making it easy for users to identify theirmobile device and the applications available for their device isprovided, referred to as a device identification system. The deviceidentification system simplifies the process of determining the device auser is using and the applications available for that device. The deviceidentification system displays one or more queries to the user thatdescribe distinguishing characteristics of multiple devices. The deviceidentification system selects the queries in such a way that the averageuser is likely to be able to easily determine the answer. For example,the device identification system may ask the user whether the user'sdevice is a flip or slider phone. The device identification systemreceives responses to the queries from the user, and determines the typeof the user's device based on the responses received.

For example, if the user indicates that his device is a flip phone, thenthe device identification system may narrow down the types of devicethat the user may have and ask the user subsequent questions until onlyone device or a handful of devices match the user's responses. Then, thesystem may present the device or devices to the user for confirmationthat the device identification system has identified the correct device.Based on the determined device, the device identification systempresents the user with information related to the determined device. Forexample, the device identification system may present the user withinformation about downloading a particular game that is available forthe user's device. Users are generally much more familiar with theirdevice's features than they are with information such as the modelnumber. Thus, the device identification system makes it easy for usersto determine their device type by asking them questions to which theyare likely to know the answer.

In addition, the device identification system may provide the userreal-time feedback as the user responds to queries to indicate that theuser is making progress towards finding applications for her device.Once the device identification system identifies a user's particulardevice, the device identification system may store information about thetype of device as the user navigates a web site, and between visits tothe web site. The device identification system may also providecross-platform up selling opportunities by offering applicationscompatible with the user's mobile device when the user purchasesapplications for other devices (e.g., a desktop computer).

The following description describes the invention with respect tovarious examples or embodiments. The following description providesspecific details for a thorough understanding of, and enablingdescription for, these embodiments of the invention. However, oneskilled in the art will understand that the invention may be practicedwithout these details. In other instances, well-known structures andfunctions have not been shown or described in detail to avoidunnecessarily obscuring the description of the embodiments of theinvention.

The terminology used in the description presented below is intended tobe interpreted in its broadest reasonable manner, even though it isbeing used in conjunction with a detailed description of certainspecific embodiments of the invention. Certain terms may even beemphasized below; however, any terminology intended to be interpreted inany restricted manner will be overtly and specifically defined as suchin this Detailed Description section.

Computing Environment

Unless described otherwise below, aspects of the invention may bepracticed with conventional systems. Thus, the construction andoperation of the various blocks shown in FIG. 1 may be of conventionaldesign, and need not be described in further detail herein to make anduse the invention, because those skilled in the relevant art willunderstand such blocks. One skilled in the relevant art can readily makeany modifications necessary to the blocks in FIG. 1 (or otherembodiments or figures) based on the detailed description providedherein.

FIG. 1 is a block diagram that illustrates one example of a suitablecomputing system for a mobile device or device used to search forcontent. The computing system 100 may include one or more processors101, one or more input devices 102, one or more data storage devices104, a display device 106, and one or more output devices 108. Thecomputing system 100 may also include hardware for connecting to othercomputer systems, such as a network connection 110 and/or wirelesstransceiver 112. The input devices 102 may include a keyboard, keypad,mouse, tablet, microphone, and so forth. The data storage devices 104may include a hard drive, optical disk drive, USB flash drive, storagearea network (SAN) (or other network accessible storage), memory card,and so forth. The data storage devices 104 may contain computer-readablemedia encoded with instructions for performing one or more of themethods described herein.

FIG. 2 is a block diagram that illustrates a typical computingenvironment for a website employing the device identification system. Auser's computer 202 includes a browser for viewing a web page. Theuser's computer 202 is connected to a network such as the Internet 206,through which the user's computer 202 accesses a website 250. Thewebsite 250 may include a load balancer 252, one or more web servers208, a distributed file system 254, and one or more databases 210. Theload balancer 252 ensures that user requests are distributed among thevarious web servers 208. The databases 210 store the web page contentoffered by the website 250, and other information such as previouslydetected types of user devices, applications compatible with eachdevice, and so forth. The web servers 208 access the databases 210 andprovide the stored web page content in response to received userrequests.

FIGS. 1-2 and the discussion herein provide a brief, general descriptionof a suitable computing environment in which the invention can beimplemented. Although not required, aspects of the invention aredescribed in the general context of computer-executable instructions,such as routines executed by a general-purpose computer, e.g., a servercomputer, wireless device, or personal computer. Those skilled in therelevant art will appreciate that the invention can be practiced withother communications, data processing, or computer systemconfigurations, including: Internet appliances, hand-held devices(including PDAs), wearable computers, all manner of cellular or mobilephones, multi-processor systems, microprocessor-based or programmableconsumer electronics, set-top boxes, network PCs, mini-computers,mainframe computers, and the like. Indeed, the terms “computer” and“mobile device” are generally used interchangeably herein, and refer toany of the above devices and systems, as well as any data processor.

Aspects of the invention can be embodied in a special purpose computeror data processor that is specifically programmed, configured, orconstructed to perform one or more of the computer-executableinstructions explained in detail herein. Aspects of the invention canalso be practiced in distributed computing environments where tasks ormodules are performed by remote processing devices, which are linkedthrough a communications network, such as a Local Area Network (LAN),Wide Area Network (WAN), or the Internet. In a distributed computingenvironment, program modules may be located in both local and remotememory storage devices.

Aspects of the invention may be stored or distributed oncomputer-readable media, including magnetically or optically readablecomputer discs, hard-wired or preprogrammed chips (e.g., EEPROMsemiconductor chips), nanotechnology memory, biological memory, or otherdata storage media. Indeed, computer implemented instructions, datastructures, screen displays, and other data under aspects of theinvention may be distributed over the Internet or over other networks(including wireless networks), on a propagated signal on a propagationmedium (e.g., an electromagnetic wave(s), a sound wave, etc.) over aperiod of time, or they may be provided on any analog or digital network(packet switched, circuit switched, or other scheme). Those skilled inthe relevant art will recognize that portions of the invention reside ona server computer, while corresponding portions reside on a clientcomputer such as a mobile or portable device, and thus, while certainhardware platforms are described herein, aspects of the invention areequally applicable to nodes on a network.

Device Identification

FIG. 3 is a block diagram that illustrates one example of the componentsof the device identification system. The device identification system300 includes a display user interface component 310, a receive inputcomponent 320, a device database component 330, a select query component340, a profile store component 350, an application store component 360,and a receive purchase component 370. The display user interfacecomponent displays an interface to a user for providing information tothe user. The receive input component 320 receives responses from theuser to queries about the type of device associated with the user. Thedevice database 330 contains information about many types of devicesthat may be associated with a user, such as the distinguishingcharacteristics of each device. The select query component 340determines an appropriate query to present to a user to determine thedevice associated with the user. For example, the select query component340 may ask the user whether the user's mobile device has an externalantenna. Based on the user's responses, the select query component 340may dynamically determine the next question to ask the user. The selectquery component 340 may attempt to ask a question that is most likely toeliminate possible devices that are not the user's device.

The profile store component 350 may store information about the user'sdevice for subsequent requests by the user. For example, the profilestore component 350 may store a cookie using the user's web browser thatidentifies the type of the user's mobile device. The application storecomponent 360 stores information about applications compatible with eachdevice. The application store component 360 may also contain builds ofeach application for one or more types of devices. The receive purchasecomponent 370 handles purchases from users, such as for content selectedthrough a web site. The receive purchase component 370 may provide theuser with information about how to download a purchased application ormay send a link (e.g., using an SMS message) directly to the user'smobile device. More details regarding the functionality of each of thesecomponents are presented herein.

In some embodiments, the device identification system may select frommany device attributes to select queries for determining the type of auser's device. These may include the mobile operator of the user'sdevice, the manufacturer, whether the device is a flip, slide, or candybar style, whether there is a key for each letter of alphabet, whetherthe device has a color screen, whether the device has a camera, wherethe camera is located (e.g., the front or back of the device), theoperating system run by the device (e.g., Windows Mobile, Palm OS),whether the device has an external antenna, and whether the device has atouch screen. Any attribute that distinguishes one device from otherdevices and that is readily identifiable by a user could be used by thedevice identification system for determining the type of a user'sdevice.

In one embodiments, the queries are presented to the user in thefollowing order:

-   -   Please select the carrier you use for mobile phone service.    -   Do you know what company makes your phone?    -   Is your phone a flip phone?        -   If yes, proceed to next question        -   If no, ask, “Is your phone a slide phone?”    -   Does your phone have a built in camera?    -   Can you send email from your phone?    -   Does your phone have an external antenna?    -   Does your phone have a key for each letter of the alphabet?    -   Does your phone have a color screen?        Based on the user's answers to these questions, the device        identification system narrows down the type of the user's phone.

In some embodiments, the device identification system offers a “don'tknow” option for responding to a query. In some cases, a user may nothave the device in front of them or for some other reason may not feelconfident in the answer to a particular query. Thus, the deviceidentification system may allow the user to skip that particularquestion and may choose another question to identify the user's device.For example, the user may not know the operating system used by herdevice, and may select “don't know” in response to a query about theoperating system.

In some embodiments, the device identification system is used inconjunction with a web merchant's or other company's website. Thewebsite may offer applications, games, or other content for mobiledevices, and may use the device identification system to present userswith products compatible with the user's device. The website may presenta user interface of the device identification system to the user beforethe user has selected any content so that the content can be restrictedto content compatible with the user's device. For example, if the userhas a Samsung D347, then the device identification system may onlypresent applications that are compatible with that model phone to theuser. Alternatively or additionally, the website may present the userinterface of the device identification system to the user after the userhas selected content (e.g., a particular game). For example, the usermay come to the site through a search engine after searching for aparticular game (e.g., Peggle), and may want to determine if the game isavailable for the user's device.

FIGS. 4-12 illustrate example display pages produced by the display userinterface component of the device identification system. FIG. 4illustrates an introductory screen in which the user is about to beginusing the device identification system to identify her device. FIG. 5illustrates a first query 510 presented to the user that asks the userthe carrier used for mobile service. FIG. 6 illustrates a subsequentscreen that comprises a summary of the previous queries 610, a new query620, and a list of matching devices 640. The summary of the previousqueries 610 indicates that the user answered “Cingular” to the carrierquery, and provides the user with an option to modify the answer to theprevious query. The new query 620 asks the user to select themanufacturer that makes the user's device. The new query 620 offers a“don't know” option 630 in case the user is unsure of the devicemanufacturer.

FIG. 7 illustrates a subsequent screen that contains a new query 710that asks the user if the phone is a flip phone. FIG. 8 illustrates asubsequent screen that contains a new query 810 that asks the user ifthe phone has a built-in camera. FIG. 9 illustrates a subsequent screenthat contains a new query 910 that asks the user if the user can sendemail from her phone. FIG. 10 illustrates a subsequent screen thatcontains displays a set of results 1010 to the user. The results 1010have been narrowed by each successive query answered by the user, suchthat the results 1010 contain seven possible matches.

FIG. 11 illustrates a subsequent screen produced after the user hasselected her device from the possible matches. The screen contains adescription 1110 of the user's device, and an option 1115 to change thedevice if the device is incorrect. The screen also contains a list 1120of games available for the user's specific device. The deviceidentification system displays the screen in FIG. 12 after the userselects the game “Zuma Mobile” from the screen in FIG. 11. FIG. 12contains a description 1210 of the user's device, instructions 1220 fordownloading the game to the user's device, and other ways 1230 to playthe game (e.g., on a personal computer). The instructions 1220 containsteps specific to the user's phone and carrier for obtaining the game.Thus, using the device identification system, the user can more easilyidentify her phone by answering common questions that the user is likelyto know the answer to, and is able to more easily download applicationsfor her device.

In some embodiments, if content selected by the user is not availablefor the user's device, the device identification system offerssubstitute content to the user. For example, a user searching for thepopular game Bejeweled may be saddened to discover that Bejeweled is notavailable for their model of phone. However, the popular game Zuma maybe available for the user's phone, and therefore the deviceidentification system may offer the user Zuma as a substitute. Thus, theuser is more satisfied with the experience of searching for games fortheir device and ends up with a great game to play.

In some embodiments, if content selected by the user is not availablefor the user's device, the device identification system suggests devicesto the user that are compatible with the selected content. For example,the user may have an older device, such as the Nokia 8290, that does notsupport some downloadable games. Thus, the device identification systemmay suggest newer devices that do support the content that the userselected. In some embodiments, the operator of the device identificationsystem may determine which devices to offer based on promotionalagreements with phone carriers.

In some embodiments, the device identification system stores the type ofthe user's device for subsequent visits. For example, the deviceidentification system may store the type of the user's device in acookie associated with the user's web browser or in a profile associatedwith the user. The next time the user visits the web site, the deviceidentification system determines the user's device based on the storedinformation and does not need to re-query the user.

In some embodiments, the device identification system may show anindication of matching devices as the user progresses through one ormore queries. Users often feel more comfortable completing a processwhen there is an indication that the process is achieving the user'sgoals. Thus, by showing the user an indication, such as a count or list,of devices that currently could be the user's device, and narrowing theindication as the user answers queries, the device identification systemprovides the user with a sense of progress toward the user's goal ofidentifying his device. Alternatively or additionally, if a list ispresented the user may at any time select her phone from the list whenthe choices become sufficiently narrow without responding to additionalqueries.

In some embodiments, the device identification system uses thedetermined device to provide the user with instructions for downloadingselected content. For example, the user may be using a mobile deviceoperator or wireless service provider that only allows receiving newcontent through that operator. A user visiting a web merchant's site mayfind a game that the user would like, but not know how to receive thegame on her phone. Thus, the device identification system may determinethe user's device and provide the user with specific instructions fordownloading the selected game to her phone. Alternatively oradditionally, the device identification system may provide the user witha deep link to a specific web page within the operator's web site andinstructions indicating how to download the game there to save the userfrom having to dig through the operator's web site to find thisinformation.

In some embodiments, the device identification system sends a link toselected content to the user's mobile device. For example, some devicescan receive content through links contained in Short Message Service(SMS) messages, via email, or directly through a browser over theInternet. Based on the user's responses to device related queries, thedevice identification system can send a link specific to the user's typeof device. For example, if the content is a game and a different buildis required based on the platform of the user's device, then the deviceidentification system can send a link for the specific build appropriatefor the user's device. Some devices, such as smart phones, allow theuser to insert the device in a docking cradle and download applicationsusing a personal computer (PC). The device identification system maysend links or the content itself to the user's PC that allow the user todownload and install the applications to her mobile device through thedocking cradle.

In some embodiments, the device identification system depends on themobile phone operator to send the correct link for selected content tothe user. For example, some mobile operators do not require knowledge ofthe user's type of device before sending an SMS message to download agame. Thus, once the mobile phone operator is known, the deviceidentification system can skip certain queries related to the devicetype and forward the user's request for content directly to the mobilephone operator. The mobile phone operator then sends the user a link tothe appropriate content for the user's device.

In some embodiments, the device identification system displays multiplequeries simultaneously. Rather than presenting queries to the user inseries, the device identification may display several (e.g., three)queries at the same time. This reduces the feeling that the user isgoing through a long interview by reducing the number of screens thatthe user sees. In many cases, the user may be able to find their deviceafter answering a single display of several questions.

The device identification system may display the determined device tothe user in subsequent displays after the device identification systemhas determined the user's device type. Users are wary about searchingfor content only to find out that no content is available for theirparticular device. By repeatedly reinforcing that the site is aware ofthe user's type of device, the device identification system increasesthe user's confidence to search for additional confidence. Thus, becausethe user knows that they will find an application that works for hisdevice, he is more likely to buy more content or spend more timebrowsing the web site.

In some embodiments, the device identification provides a reset link toindicate that the type of the user's phone is incorrect. For example, ifthe user purchases a new phone, a web site using the deviceidentification system may provide a “change phone” link that the usercan activate to repeat the device identification process and determinethe type of the user's new device.

The device identification system may use stored information about theuser's device type to provide marketing information to the user. Forexample, when the user visits a web merchant's site to purchase a gamefor his PC, if the web merchant also offers a mobile version of the gamethat is compatible with the user's mobile device, the web merchant mayoffer the mobile version of the game as part of the purchase. The webmerchant may charge an additional fee for the mobile version or includethe game free.

In some embodiments, the operator of the device identification systemmay provide their own branded phone. For example, when a user cannotfind a game for his phone, the device identification system may displayan offer to the user to purchase a phone compatible with the operator'sweb site. The phone may be preloaded with content from the operator,such as games, applications, and so on.

In some embodiments, the device identification system uses storedinformation about users' devices for statistical purposes. For example,the device identification system may provide a report to mobileoperators indicating the most popular types of devices, or content thatusers selected but were unable to obtain because of the type of theirdevices or restrictions imposed by the carrier. In some embodiments,mobile operators may bid with a web merchant for placement as asuggested replacement for devices that do not support popular content.For example, if a web merchant offers a downloadable game, but usershaving an older phone cannot play the game, the web merchant may suggesta particular updated phone model or particular mobile operator that iscompatible with the selected content.

FIGS. 13-14 are representative flow diagrams that depict processes usedin some embodiments. These flow diagrams do not show all functions orexchanges of data, but instead they provide an understanding of commandsand data exchanged under the system. Those skilled in the relevant artwill recognize that some functions or exchange of commands and data maybe repeated, varied, omitted, or supplemented, and other (lessimportant) aspects not shown may be readily implemented.

FIG. 13 is a flow diagram that illustrates one example of the processingof the components of the system to determine the type of a user'sdevice. In block 1310, the component displays a query to the user thatdescribes an attribute of a mobile device. For example, the query mayask whether the user's device is a flip phone. In block 1320, thecomponent receives a response from the user based on the query. In block1330, the component selects devices that match the received response andany previously received responses. For example, if the user indicatedthat his device is a flip phone, then the component provides a list offlip phones and removes devices that are not flip phones. In decisionblock 1340, if the user's device has been determined, then the componentcontinues at block 1350, else the component loops to block 610 todisplay additional queries. In block 1350, the component providesinformation related to the determined devices. The component may notpresent additional queries to the user once the number of possibledevices is small (e.g., five), and may present the user with images ofthe devices to select from instead. After block 1350, the componentcompletes.

FIG. 14 is a flow diagram that illustrates one example of the processingof the select query component of the device identification system. Thecomponent is invoked to select the order of queries presented to theuser. The component may invoked prior to receiving any user queries todetermine an order that queries will be presented, or may be invokeddynamically to determine an order based on the user's responses toprevious queries. In block 1410, the component determines thedistinguishing characteristics of devices. For example, the componentmay inspect a database of device information to determinecharacteristics that distinguish one device from another. In block 1420,the component sorts the characteristics based on the level ofdistinction that the characteristic provides. For example, the componentmay determine that device color does not distinguish very many devicesfrom one another and therefore the component may sort color lower thananother characteristic. In block 1430, the component provides the queryorder based upon a request. After block 1430, the component completes.

CONCLUSION

From the foregoing, it will be appreciated that specific embodiments ofthe device identification system have been described herein for purposesof illustration, but that various modifications may be made withoutdeviating from the spirit and scope of the invention. For example,although mobile phones have been used by way of example, other mobiledevices can be used with the device identification system such as PDAs,portable gaming devices, smart phones, smart watches, and so on. Inaddition, although games are used by way of example, other content suchas ring tones, applications, and other types of content may be used withthe system. Accordingly, the invention is not limited except as by theappended claims.

Unless the context clearly requires otherwise, throughout thedescription and the claims, the words “comprise,” “comprising,” and thelike are to be construed in an inclusive sense, as opposed to anexclusive or exhaustive sense; that is to say, in the sense of“including, but not limited to.” The word “coupled,” as generally usedherein, refers to two or more elements that may be either directlyconnected, or connected by way of one or more intermediate elements.Additionally, the words “herein,” “above,” “below,” and words of similarimport, when used in this application, shall refer to this applicationas a whole and not to any particular portions of this application. Wherethe context permits, words in the above Detailed Description using thesingular or plural number may also include the plural or singular numberrespectively. The word “or” in reference to a list of two or more items,that word covers all of the following interpretations of the word: anyof the items in the list, all of the items in the list, and anycombination of the items in the list.

The above detailed description of embodiments of the invention is notintended to be exhaustive or to limit the invention to the precise formdisclosed above. While specific embodiments of, and examples for, theinvention are described above for illustrative purposes, variousequivalent modifications are possible within the scope of the invention,as those skilled in the relevant art will recognize. For example, whileprocesses or blocks are presented in a given order, alternativeembodiments may perform routines having steps, or employ systems havingblocks, in a different order, and some processes or blocks may bedeleted, moved, added, subdivided, combined, and/or modified. Each ofthese processes or blocks may be implemented in a variety of differentways. In addition, while processes or blocks are at times shown as beingperformed in series, these processes or blocks may instead be performedin parallel, or may be performed at different times.

The teachings of the invention provided herein can be applied to othersystems, not necessarily the system described above. The elements andacts of the various embodiments described above can be combined toprovide further embodiments.

These and other changes can be made to the invention in light of theabove Detailed Description. While the above description details certainembodiments of the invention and describes the best mode contemplated,no matter how detailed the above appears in text, the invention can bepracticed in many ways. Details of the system may vary considerably inimplementation details, while still being encompassed by the inventiondisclosed herein. As noted above, particular terminology used whendescribing certain features or aspects of the invention should not betaken to imply that the terminology is being redefined herein to berestricted to any specific characteristics, features, or aspects of theinvention with which that terminology is associated. In general, theterms used in the following claims should not be construed to limit theinvention to the specific embodiments disclosed in the specification,unless the above Detailed Description section explicitly defines suchterms. Accordingly, the actual scope of the invention encompasses notonly the disclosed embodiments, but also all equivalent ways ofpracticing or implementing the invention under the claims.

While certain aspects of the invention are presented below in certainclaim forms, the inventors contemplate the various aspects of theinvention in any number of claim forms. For example, while only oneaspect of the invention is recited as embodied in a computer-readablemedium, other aspects may likewise be embodied in a computer-readablemedium. Accordingly, the inventors reserve the right to add additionalclaims after filing the application to pursue such additional claimforms for other aspects of the invention.

1. A method in a computer system for determining the type of a deviceassociated with a user, the method comprising: displaying queries to theuser describing characteristics of multiple devices; receiving from theuser one or more responses to the queries; determining the type of thedevice associated with the user based on the received responses; andproviding the user with information related to the determined device. 2.The method of claim 1 wherein the information is a downloadable game. 3.The method of claim 1 wherein the information comprises instructions fordownloading an application for the device.
 4. The method of claim 1including gathering statistics about the determined devices of multipleusers.
 5. The method of claim 1 including selecting a build of anapplication based on the determined device.
 6. The method of claim 1including determining at least one application among a group ofapplications that is compatible with the determined device.
 7. Themethod of claim 1 including notifying the user when a new application isavailable for the determined device.
 8. The method of claim 1 includingstoring information about the determined device in a profile associatedwith the user.
 9. The method of claim 1 including sending the user amessage with a link to an application based on the determined device.10. The method of claim 1 including receiving a request for anapplication from the user and when the application requested by the useris not available for the determined device, providing information to theuser about a substitute application.
 11. The method of claim 1 includingreceiving a request for an application from the user and when theapplication requested by the user is not available for the determineddevice, providing information to the user about another device for whichthe application is available.
 12. A computer-readable medium encodedwith instructions for controlling a computer system to categorize mobiledevices by characteristics, by a method comprising: determining one ormore characteristics that distinguish one mobile device from othermobile devices in a group of multiple devices; sorting thecharacteristics to determine more distinguishing characteristics; andproviding the characteristics in response to a request from a decisionsupport system wherein the characteristics are provided in an orderrelated to how well each characteristic distinguishes one mobile devicefrom other mobile devices, such that queries based on the distinguishingcharacteristics can be used to determine the type of a device associatedwith a user.
 13. The computer-readable medium of claim 12 includingproviding information about an application compatible with each devicein the group in response to a request from a decision support system.14. The computer-readable medium of claim 12 wherein sorting thecharacteristics comprises determining how many devices match aparticular characteristic when the characteristic has a particularvalue.
 15. The computer-readable medium of claim 12 wherein sorting thecharacteristics comprises determining an order that requires the fewestnumber of questions to identify the type of the device associated withthe user.
 16. A system for providing information about an applicationfor a mobile device associated with a user, comprising: a purchasereceiving component configured to receive a request to purchase anapplication for a first device associated with the user; a profile storecomponent configured to identify based upon a profile associated withthe user a mobile device other than the first device associated with theuser; and a user interface display component configured to display tothe user information about an application for the mobile device relatedto the application for the first device.
 17. The system of claim 16wherein the application for the mobile device is a build of theapplication for the first device that is compatible with the mobiledevice.
 18. The system of claim 16 wherein the applications are games.19. The system of claim 16 wherein the profile store component stores acookie with a browser associated with the user.
 20. The system of claim16 wherein the purchase receiving component receives the request topurchase through a web site of a web merchant.